#ifndef CONTROLSTATE_H
#define CONTROLSTATE_H

#include <boost/thread.hpp>

class ControlState
{
public:
  ControlState();

  enum E_CONTROL_STATE {
    eState_Init,
    eState_Connect,
    eState_Wait4Header,
    eState_Wait4Data,
    eState_Reset,
    eState_Disconnect
  };
  E_CONTROL_STATE getState();
  E_CONTROL_STATE setState(E_CONTROL_STATE p_eState);

private:
  boost::mutex m_mAccess;
  E_CONTROL_STATE m_eState;
};

#endif // CONTROLSTATE_H
